package com.hw.paltfrom.controller.system;
import com.hw.paltfrom.pack.ResponseResult;
import com.hw.paltfrom.rescode.HWSystemCode;
import com.hw.paltfrom.service.system.BaseAreaServer;
import com.hw.paltfrom.utils.VerifyUtil;
import com.hw.paltfrom.vo.BaseAreaVo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.Map;

/**
 *行政区域
 * 崔孟超
 * 2019年11月6日15:06:04
 */
@RestController
@RequestMapping(value = "/HwBaseArea")
public class BaseAreaController {

	@Autowired
	private BaseAreaServer hwBaseAreaServer;

	/**
	 *
	 * 行政区域查询   前端判断查询条件是汉字还是 数字， 汉字传fAreaName、字母+数字传fAreaCode
	 * 前端必须区分 传递过来的是 编码 还是 名称，不同类型 对应 不同vo字段
	 * @param vo
	 * @return
	 */
	@RequestMapping(value = "/query")
	public Map<String, Object> Query(BaseAreaVo vo) {
		Boolean flag = VerifyUtil.verifyParams(vo);
		if (!flag) {
			return ResponseResult.fail(HWSystemCode.PARAMS_ERROR);
		}
		return hwBaseAreaServer.queryAllList(vo);

	}

	/**
	 * 行政区域添加
	 * @param vo
	 * @return
	 */
	@RequestMapping(value = "/insert")
	public Map<String, Object> insert(BaseAreaVo vo) {
		Boolean flag = VerifyUtil.verifyParams(vo);
		if (!flag) {
			return ResponseResult.fail(HWSystemCode.PARAMS_ERROR);
		}
		return hwBaseAreaServer.insert(vo);
	}

	/**
	 *行政区域更新 或 删除
	 * 删除fDeletemark传1  更新传0
	 * @param vo
	 * @return
	 */
	@RequestMapping(value = "/update")
	public Map<String, Object> update(BaseAreaVo vo) {
		Boolean flag = VerifyUtil.verifyParams(vo);
		if (!flag) {
			return ResponseResult.fail(HWSystemCode.PARAMS_ERROR);
		}
		return hwBaseAreaServer.update(vo);

	}

	/**
	 * 修改状态
	 * @param vo
	 * @return
	 */
	@RequestMapping(value = "/state")
	public Map<String ,Object> userState(BaseAreaVo vo){
		Boolean flag = VerifyUtil.verifyParams(vo);
		if (!flag){
			return ResponseResult.fail(HWSystemCode.PARAMS_ERROR);
		}
		return hwBaseAreaServer.userState(vo);
	}

}
